package com.wmh.baseservice.skd.pojo;

import com.baomidou.mybatisplus.annotation.*;

import java.io.Serializable;
import java.util.Date;
import lombok.Data;
import lombok.experimental.Accessors;

/**
 * 团购活动表
 * @TableName skd_group_buying_activities
 */
@TableName(value ="skd_group_buying_activities")
@Data
@Accessors(chain = true)
public class SkdGroupBuyingActivities implements Serializable {
    /**
     * 主键
     */
    @TableId(value = "id", type = IdType.AUTO)
    private Long id;

    /**
     * 用户id
     */
    @TableField(value = "user_id")
    private Long userId;

    /**
     * 团购活动标题
     */
    @TableField(value = "title")
    private String title;

    /**
     * 团购活动内容
     */
    @TableField(value = "content")
    private String content;

    /**
     * 商品快照
     */
    @TableField(value = "goods_snapshot")
    private String goodsSnapshot;

    /**
     * 同城配送
     */
    @TableField(value = "city_delivery")
    private String cityDelivery;

    /**
     * 自提点id
     */
    @TableField(value = "pickup_point_ids")
    private String pickupPointIds;

    /**
     * 拼团活动的开始时间
     */
    @TableField(value = "start_date")
    private Date startDate;

    /**
     * 拼团活动的结束时间
     */
    @TableField(value = "end_date")
    private Date endDate;

    /**
     * 存储佣金设置的JSON数据
     * [
     *   {
     *     "volume": 50,
     *     "commissionPerItem": 3
     *   },
     *   {
     *     "volume": 100,
     *     "commissionPerItem": 5
     *   },
     *   {
     *     "volume": 200,
     *     "commissionPerItem": 7
     *   }
     * ]
     * volume：表示达到该销量的阈值。
     * commissionPerItem：表示每件商品的佣金。
     * 例如，上面的JSON表示当销量达到50件时，每件商品的佣金是3元；销量达到100件时，每件商品的佣金是5元；销量达到200件时，每件商品的佣金是7元。
     */
    @TableField(value = "commission_settings")
    private String commissionSettings;

    /**
     * 存储达量奖设置的JSON数据
     * [
     *   {
     *     "volume": 1000,
     *     "reward": 300
     *   },
     *   {
     *     "volume": 2000,
     *     "reward": 500
     *   },
     *   {
     *     "volume": 3000,
     *     "reward": 700
     *   }
     * ]
     * volume：表示达到该销量的阈值。
     * reward：表示达到该销量阈值后的一次性奖金。
     * 例如，上面的JSON表示销量达到1000件时，奖金是300元；销量达到2000件时，奖金是500元；销量达到3000件时，奖金是700元。
     */
    @TableField(value = "volume_reward_settings")
    private String volumeRewardSettings;

    /**
     * 创建时间
     */
    @TableField(value = "create_time")
    private Date createTime;

    /**
     * 更新时间
     */
    @TableField(value = "update_time")
    private Date updateTime;

    /**
     * 是否结束 0 未结束 1 已结束
     */
    @TableField(value = "is_end")
    private Integer isEnd;

    /**
     * 删除 0 未删除 1已删除
     */
    @TableField(value = "deleted")
    @TableLogic
    private Integer deleted;

    @TableField(exist = false)
    private static final long serialVersionUID = 1L;
}